#ifndef _STRAWGUI_DRAW_SURFACE_H_
#define _STRAWGUI_DRAW_SURFACE_H_

#include "sMath.h"

namespace sgui
{
namespace engine
{
	class sDrawStack;

	class sDrawSurface
	{
	private:
		math::sPointf			m_surfaceSize;
	public:
		const math::sPointf& getSurfaceSize() const { return m_surfaceSize; }
		void setSurfaceSize(const math::sPointf& size) { m_surfaceSize = size; }
		
		virtual void beginRender(sDrawStack& stack) const = 0;
		virtual void endRender(sDrawStack& stack) const = 0;

		sDrawSurface() {}
		sDrawSurface(const math::sPointf& size) : m_surfaceSize(size) {}
	};
};
};

#endif